package com.linran.structure_algorithm.数据结构.lesson8_树;

/**
 * 顺序存储二叉数
 */
public class ArrBinaryTreeDemo {
    public static void main(String[] args) {
        int[] arr = new int[]{1,2,3,4,5,6,7};
        // 1 2 4 5 3 6 7
        preOrder(arr, 0);
    }

    // 前序遍历
    public static void preOrder(int[] arr, int index) {
        System.out.println(arr[index]);
        // 向左递归遍历
        if ((2 * index + 1) < arr.length) {
            preOrder(arr, 2 * index + 1);
        }
        // 向右递归遍历
        if ((2 * index + 2) < arr.length) {
            preOrder(arr, 2 * index + 2);
        }
    }
}
